package com.hengpeng.msls.service.impl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

import com.hengpeng.msls.dao.DaoFactory;
import com.hengpeng.msls.port.PortActiveFactory;
import com.hengpeng.msls.port.PortFactory;
import com.hengpeng.msls.service.ServiceFactory;
import com.hengpeng.msls.service.account.AccountService;
import com.hengpeng.msls.service.assign.AssignService;
import com.hengpeng.msls.service.borrowinfo.BorrowInfoService;
import com.hengpeng.msls.service.comment.CommentService;
import com.hengpeng.msls.service.core.CoreService;
import com.hengpeng.msls.service.invest.InvestInfoService;
import com.hengpeng.msls.service.marketing.PointService;
import com.hengpeng.msls.service.message.MessageService;
import com.hengpeng.msls.service.repayment.RepaymentService;
import com.hengpeng.msls.service.userInfo.UserBankCardService;
import com.hengpeng.msls.service.userInfo.UserInfoService;

@Service
public class ServiceFactoryImpl implements ServiceFactory {
    @Autowired
    @Qualifier("portFactoryImpl")
    private PortFactory protFactory;
    
    @Autowired
    @Qualifier("portFactoryActiveImpl")
    private PortActiveFactory portActiveFactory;

    @Autowired
    private DaoFactory daoFactory;

    @Autowired
    private AccountService accountService;

    @Autowired
    private PointService pointService;

    @Autowired
    private MessageService messageService;

    @Autowired
    private CommentService commentService;

    @Autowired
    private CoreService coreService;

    @Autowired
    private BorrowInfoService borrowInfoService;

    @Autowired
    private InvestInfoService investInfoService;

    @Autowired
    private RepaymentService repaymentService;

    @Autowired
    private AssignService assignService;

    @Autowired
    private UserInfoService userInfoService;

    @Autowired
    private UserBankCardService userBankCardService;

    @Override
    public PortActiveFactory getPortActiveFactory() {
        return portActiveFactory;
    }

    @Override
    public DaoFactory getDaoFactory() {
        return daoFactory;
    }

    @Override
    public UserBankCardService getUserBankCardService() {
        return userBankCardService;
    }

    @Autowired
    public CommentService getCommentService() {
        return commentService;
    }

    @Override
    public MessageService getMessageService() {
        return messageService;
    }

    @Override
    public PortFactory getProtFactory() {
        return protFactory;
    }

    @Override
    public AccountService getAccountService() {
        return accountService;
    }

    @Override
    public PointService getPointService() {
        return pointService;
    }

    @Override
    public CoreService getCoreService() {
        return coreService;
    }

    @Override
    public BorrowInfoService getBorrowInfoService() {
        return borrowInfoService;
    }

    @Override
    public InvestInfoService getInvestInfoService() {
        return investInfoService;
    }

    @Override
    public RepaymentService getRepaymentService() {
        return repaymentService;
    }

    @Override
    public AssignService getAssignService() {
        return assignService;
    }

    @Override
    public UserInfoService getUserInfoService() {
        return userInfoService;
    }

}
